#include <stdlib.h>
#include <stdio.h>
#include <assert.h>
#include <string.h>
#include "JEU.h"

void jeInit_Jeu(JEU* je)
{
    je->de=deCreer_De();
    je->pi=piCreer_Pion();
    je->ta=caCreer_Case();
    je->tabcarte=carCreer_Carte();
    je->avancement=0;
    je->nbjoueur=0;
    je->d = 0;
    je->respi=0;
    je->resqu=0;
    je->reponse=0;
}

void jeRecup_Des(JEU* je)
{
    int de;
    assert (je!=NULL);
    deTirage_Alea(je->de);
    de = je->de->de1 + je->de->de2;
    je->d = de;
}

void jeDeplacement_Pion1(JEU* je)
{
    if(je->pi->numcase>39)
    {
        je->pi->numcase = 0;
    }
        printf("le pion est sur la case %d \n",je->pi->numcase);
        je->pi->numcase = je->pi->numcase + je->d;
        je->pi->x_dep1 = je->ta[je->pi->numcase].x;
        je->pi->y_dep2 = je->ta[je->pi->numcase].y;
        printf("le pion est sur la case de coordonner x %f \n",je->pi->x_dep1);
        printf("le pion est sur la case de coordonner y %f \n",je->pi->y_dep1);
}

void jeDeplacement_Pion2(JEU* je)
{
    if(je->pi->numcase>39)
    {
        je->pi->numcase = 0;
    }
        printf("le pion est sur la case %d \n",je->pi->numcase);
        je->pi->numcase = je->pi->numcase + je->d;
        je->pi->x_dep2 = je->ta[je->pi->numcase].x;
        je->pi->y_dep2 = je->ta[je->pi->numcase].y;
        printf("le pion est sur la case de coordonner x %f \n",je->pi->x_dep2);
        printf("le pion est sur la case de coordonner y %f \n",je->pi->y_dep2);
}

void jeDeplacement_Pion3(JEU* je)
{
    if(je->pi->numcase>39)
    {
        je->pi->numcase = 0;
    }
        printf("le pion est sur la case %d \n",je->pi->numcase);
        je->pi->numcase = je->pi->numcase + je->d;
        je->pi->x_dep3 = je->ta[je->pi->numcase].x;
        je->pi->y_dep3 = je->ta[je->pi->numcase].y;
        printf("le pion est sur la case de coordonner x %f \n",je->pi->x_dep3);
        printf("le pion est sur la case de coordonner y %f \n",je->pi->y_dep3);
}

void jeDeplacement_Pion4(JEU* je)
{
    if(je->pi->numcase>39)
    {
        je->pi->numcase = 0;
    }
        printf("le pion est sur la case %d \n",je->pi->numcase);
        je->pi->numcase = je->pi->numcase + je->d;
        je->pi->x_dep4 = je->ta[je->pi->numcase].x;
        je->pi->y_dep4 = je->ta[je->pi->numcase].y;
        printf("le pion est sur la case de coordonner x %f \n",je->pi->x_dep4);
        printf("le pion est sur la case de coordonner y %f \n",je->pi->y_dep4);
}

void jeReponse_question(JEU* je)
{
	int i;
	printf("la reponse donné est elle juste, 1 pour oui 0 pour non \n");
	scanf("%d", &i);
	if (i == 1) je->reponse = 1;
	else je->reponse = 0;
}

void jeActualise_point(JEU* je)
{
    if(je->reponse == 1)
    {
        je->pi->jo->point = je->pi->jo->point + 10;
    }
    else je->pi->jo->point = je->pi->jo->point - 10;
}

void jeTirage_Carte(JEU* je)
{
     int res_ques=(rand() % (8) + 1);
     int res_pi=(rand() % (13) + 9);

     if (strcmp(je->ta->type, "Question")==0)
     {
        if (res_ques==1)
        {
	    printf("quel est la capital de la france ?\n");
	    jeReponse_question(je);
	    jeActualise_point(je);
        }
        else if (res_ques==2)
        {
            printf("quel est le champion en titre de L1 ?\n");
	    jeReponse_question(je);
	    jeActualise_point(je);
        }
        else if (res_ques==3)
        {
            printf("Combien y'a t'il de joueur sur un terrain de handball ?\n");
	    jeReponse_question(je);
	    jeActualise_point(je);
        }
        else if (res_ques==4)
        {
            printf("quel est le mot en anglais pour bonjour ?\n");
	    jeReponse_question(je);
	    jeActualise_point(je);
        }
        else if (res_ques==5)
        {
            printf("citez 4 espèces differentes de mamifère ?\n");
	    jeReponse_question(je);
	    jeActualise_point(je);
        }
        else if (res_ques==6)
        {
            printf("Combien faut il de point pour avoir son permis ?\n");
	    jeReponse_question(je);
	    jeActualise_point(je);
        }
        else if (res_ques==7)
        {
            printf("Combien font 12 fois 12 ?\n");
	    jeReponse_question(je);
	    jeActualise_point(je);
        }
        else if (res_ques==8)
        {
            printf("Combien ya t'il de Region en France ?\n");
	    jeReponse_question(je);
	    jeActualise_point(je);
        }
     }

     if (strcmp(je->ta->type,"pièges")==0)
     {
        if (res_pi==9)
        {
         je->pi->jo->point = je->pi->jo->point + 10;
        }
        else if (res_pi==10)
        {
            if (strcmp(je->ta->type, "Question")==0)
            {
               if (res_ques==1)
               {
		    printf("quel est la capital de la france ?\n");
		    jeReponse_question(je);
		    jeActualise_point(je);
		}
		else if (res_ques==2)
		{
		    printf("quel est le champion en titre de L1 ?\n");
		    jeReponse_question(je);
		    jeActualise_point(je);
		}
		else if (res_ques==3)
		{
		    printf("Combien y'a t'il de joueur sur un terrain de handball ?\n");
		    jeReponse_question(je);
		    jeActualise_point(je);
		}
		else if (res_ques==4)
		{
		    printf("quel est le mot en anglais pour bonjour ?\n");
		    jeReponse_question(je);
		    jeActualise_point(je);
		}
		else if (res_ques==5)
		{
		    printf("citez 4 espèces differentes de mamifère ?\n");
		    jeReponse_question(je);
		    jeActualise_point(je);
		}
		else if (res_ques==6)
		{
		    printf("Combien faut il de point pour avoir son permis ?\n");
		    jeReponse_question(je);
		    jeActualise_point(je);
		}
		else if (res_ques==7)
		{
		    printf("Combien font 12 fois 12 ?\n");
		    jeReponse_question(je);
		    jeActualise_point(je);
		}
		else if (res_ques==8)
		{
		    printf("Combien ya t'il de Region en France ?\n");
		    jeReponse_question(je);
		    jeActualise_point(je);
		}
	     }
	}
	else if (res_pi==11)
	{
	    je->pi->jo->point = je->pi->jo->point - 10;
	}
	else if (res_pi==12)
	{
	    je->pi->numcase = 1;
	}
	else if (res_pi==13)
	{
	    je->pi->numcase = 55;
	}
     }
     je->respi=res_pi;
     je->resqu=res_ques;
}


